Method and device for low delay processing

ABSTRACT

Adaptive processing of an input signal is achieved by offline analysis, with inline processing comprising an adaptive filter. The method comprises passing the input signal through an adaptive time domain filter to produce an output signal. The input signal and/or output signal is used as an offline analysis signal. The analysis signal is transformed into a transform domain (eg frequency domain) to produce a transformed analysis signal. The transformed analysis signal is analysed, for example by ADRO, to produce a plurality of desired gains each corresponding to a respective transform domain sub-band. A time domain filter characteristic is synthesised to at least approach the desired gains. The adaptive filter is updated with the synthesised filter characteristic. Minimum phase adaptive filter techniques are found to possess particular benefits in this scheme.

FIELD OF THE INVENTION

The present invention relates to signal processing, and in particularrelates to adaptively processing a signal in a manner which introducesminimal delay.

BACKGROUND OF THE INVENTION

A design problem in many signal processing applications is to perform agiven task or algorithm on a signal while introducing as little delay aspossible. This delay is usually characterize by a measure known as groupdelay, defined as the negative rate of change of the total introducedphase shift with respect to angular frequency, −dθ/dω. A filter orsystem that introduces a constant group delay with respect to frequencyis said to have linear phase. A filter or system with non-linear phaseintroduces variable delay with frequency (A. V. Oppenheim and R. W.Schafer, Discrete-Time Signal Processing, Englewood Cliffs, N.J.:Prentice-Hall Inc., 1989).

The importance of group delay depends on application, but isparticularly critical in the design of audio devices, such astelephones, mobile phones, headsets, hearing aids, and cochlearimplants. Introduction of additional signal path delay in these devicescan have a significant impact on performance and usability. Specificproblems can include:

-   -   increased perceivable echo from network or acoustic sources;    -   reduced perceptual coherence between user's own voice and        side-tone or assisted listening path;    -   reduced perceptual coherence between listening cues & other        sensory (eg visual) cues;    -   reduced control and integrity of delay differences in binaural        listening;    -   reduced opportunity to avoid other perceptual problems, such as        the occlusion effect (as described in J. Agnew and J. M.        Thornton, Just Noticeable and Objectionable Group Delays in        Digital Hearing Aids, Journal of the American Academy of        Audiology, no. 11, pp. 330-336, 2000, J. Groth and M. B.        Søndergaard, Disturbance caused by varying propagation delay in        non-occluding hearing aid fittings, International Journal of        Audiology, no. 43, pp. 594-599, 2004, M. A. Stone and B. C. J.        Moore, Tolerable Hearing-Aid Delays: IV. Effects on Subjective        Disturbance During Speech Production by Hearing-Impaired        Subjects, Ear & Hearing, no. 26, pp. 225-235, 2005);    -   increased likelihood of feedback or gain stability;    -   increased resource requirements for echo or feedback        cancellation; and    -   reduced sound quality, intelligibility and clarity of        communication.

Telecommunication standards also mandate strict compliance to rigorousspecifications on group delay and its related effects, in order tomaintain quality of communication in the network (for example see IEEEStd 269-2002: Standard Methods for Measuring Transmission Performance ofAnalog and Digital Telephone Sets, Handsets, and Headsets, The Instituteof Electrical and Electronics Engineers (IEEE), New York N.Y., 2002,ITU-T Recommendation P. 340: Transmission characteristics and speechquality parameters for hands-free terminals, InternationalTelecommunication Union (ITU), May 2000, Telstra Specification TPTT404B51: Specification—Headset & Limiting Amplifier. AcousticProtection. Telstra Corporation Limited, Issue 3.1, 11 June 2001).

Many modern audio devices use multi-band, or transform domain, signalprocessing techniques to improve some aspect of performance, but oftenincur significant group delay in the process. A predominant class ofmulti-band techniques utilized in audio processing applications usesblock processing, with a Fast Fourier Transform (FFT) analysis, andInverse Fast Fourier Transform (IFFT) overlap-add synthesis, to analyseand process signals in frequency sub-bands. This type of technique isdepicted in the generalized block diagram of FIG. 1. In FIG. 1 theprocessing path 100 takes an input signal x[n] which is buffered bybuffer 102 and then windowed with an analysis window w_(a)[n] at 104.FFT block 106 then produces a frequency domain input X[k], which issuitably processed by a multi-band/frequency domain processing block 108to generate a frequency domain output Y[k]. The frequency domain outputY[k] is passed through IFFT block 110, windowed at 112 with a synthesiswindow w_(s)[n], and passed through overlap-add and de-buffer block 114to produce output y[n].

A significant proportion of the group delay incurred in the arrangementof FIG. 1 occurs because of the necessity to initially buffer the inputsignal at 102 to be suitable for subsequent block operations in thesignal path such as windowing 104, FFT 106, and IFFT 110. At a minimum,the group delay t₁(min) is equivalent to the sample period multiplied bythe window block size or FFT length L, plus a constant, so that:t ₁(min)=L _(FFT) /f _(s) +t _(p)

where f_(s) is the base sample rate in Hz, and t_(p) is the additionallatency required for the processor to perform the required operations toobtain the final output block y[n].

Several other multi-band processing structures have also been used inaudio devices, some targeted specifically at reducing group delay. Onesuch method applies a time domain filter bank using IIR or FIR filtersin place of the FFT filter-bank structure applied in FIG. 1. This typeof scheme is depicted in FIG. 2. The processing path 200 of FIG. 2divides input x[n] into multiple paths, each of which is passed to arespective filterbank and downsample/decimation block 202 to producemultiple sub-band domain inputs X[k]. The sub-band domain inputs X[k]are subject to multi-band/frequency domain processing at 204 to producesub-band domain outputs Y[k]. Following upsampling/interpolation at 206,the multiple paths are combined at 208 to produce an output y[n].

The reduced group delay in the scheme of FIG. 2 typically comes fromavoiding the block processing and buffering requirements seen in the FFTfilter-bank schemes. In theory the group delay of FIG. 2 can be verylow, particularly if interpolation & decimation stages are not required,and minimum phase (minimum group delay) filters are used in thefilter-bank 202. Minimum group delay t₂(min) of FIG. 2 is:t ₂(min)+t _(tdf) +t _(p)

where t_(tdf) is the minimum delay in the time domain filterbank 202,and t_(p) is again the additional latency required to process forrealization of the final output y[n]. The scheme also has the advantageof flexibility in allowing more selective or non-uniform resolutionfilters in the filter-bank, for example to mimic the Bark scale, or toreflect critical bands in human hearing.

However the filter-bank design of FIG. 2 is sensitive to cross-over andphase matching requirements, and implementation is computationallyexpensive to achieve the sub band resolution achieved using an FFT forexample. Furthermore, additional decimation and interpolation filteringis needed if the core processing is to be performed at a lower samplerate appropriate to the sub-band bandwidth. This decimation andinterpolation process incurs additional group delay, but is importantfor the computational efficiency of many algorithms that would be usedfor the core processing.

Any discussion of documents, acts, materials, devices, articles or thelike which has been included in the present specification is solely forthe purpose of providing a context for the present invention. It is notto be taken as an admission that any or all of these matters form partof the prior art base or were common general knowledge in the fieldrelevant to the present invention as it existed before the priority dateof each claim of this application.

Throughout this specification the word “comprise”, or variations such as“comprises” or “comprising”, will be understood to imply the inclusionof a stated element, integer or step, or group of elements, integers orsteps, but not the exclusion of any other element, integer or step, orgroup of elements, integers or steps.

SUMMARY OF THE INVENTION

According to a first aspect, the present invention provides a method ofadaptively processing an input signal, the method comprising:

passing the input signal through an adaptive time domain filter toproduce an output signal;

taking at least one of the input signal and the output signal as ananalysis signal;

transforming the analysis signal into a transform domain to produce atransformed analysis signal;

analysing the transformed analysis signal to produce a plurality ofdesired gains each corresponding to a respective transform domainsub-band;

synthesising a minimum phase time domain filter characteristic whichapproaches the desired gains; and

updating the adaptive filter with the synthesised filter characteristic.

According to a second aspect, the present invention provides a computerprogram for adaptively processing an input signal, the computer programcomprising:

code for passing the input signal through an adaptive tie domain filterto produce an output signal;

code for taking at least one of the input signal and the output signalas an analysis signal;

code for transforming the analysis signal into a transform domain toproduce a transformed analysis signal;

code for analysing the transformed analysis signal to produce aplurality of desired gains each corresponding to a respective transformdomain sub-band;

code for synthesising a minimum phase time domain filter characteristicwhich approaches the desired gains; and

code for updating the adaptive filter with the synthesised filtercharacteristic.

According to a third aspect, the present invention provides a device foradaptively processing an input signal, the device comprising

an adaptive time domain filter for producing an output signal from aninput signal;

a transform block for taking an analysis signal from at least one of theinput signal and the output signal, and for transforming the analysissignal into a transform domain to produce a transformed analysis signal;

a processor for analysing the transformed analysis signal to produce aplurality of desired gains each corresponding to a respective transformdomain sub-band;

a filter synthesiser for synthesising a minimum phase time domain filtercharacteristic which approaches the desired gains, and for updating theadaptive filter with the synthesised filter characteristic.

By performing transform domain signal analysis in order to define thefilter characteristic, the present invention provides for ‘offline’signal analysis. That is, the transform domain analysis is notinterposed between the input signal and the output signal, such that theoutput signal is not subject to a group delay caused by the offlineanalysis. Further, the present invention recognises that a filtercharacteristic, such as filter coefficients used to implement a filter,may be adaptively updated, and may be adaptively defined substantiallyin real time by such transform domain analysis.

Embodiments of the first to third aspects of the invention, utilising aminimum phase filter characteristic, will thus include filtercharacteristics of non-linear phase. An extent of the phasenon-linearity is preferably limited to below a perception threshold.Such embodiments recognise that non-linear phase signal filtering can besubstantially imperceptible to a user when phase non-linearity ismaintained below such a threshold. Further, by synthesising a filtercharacteristic of minimum phase, such embodiments of the inventionprovide for particularly low group delay between the input signal andthe output signal.

In embodiments of the invention where the transform domain is thefrequency domain, synthesis of a minimum phase filter characteristic maycomprise: obtaining the cepstrum (IFFT) of the logarithmically expresseddesired gains; ensuring the cepstrum is causal; and taking the FFT ofthe causal cepstrum to produce logarithmically expressed minimum phasedesired gains.

Such embodiments of the present invention recognise that the cepstrum iscausal if and only if both the poles and zeros of the transfer functionare inside the unit circle. Such embodiments of the present inventionfurther recognise that a filter is minimum phase if both the poles andzeros of the transfer function are inside the unit circle. Thus, byensuring that the cepstrum is causal, such embodiments provide forsynthesis of a minimum phase filter. Such embodiments may thus combinelog domain multi-band processing followed by immediate cepstrumcalculation.

Ensuring the cepstrum is causal may comprise applying a folding sequenceto the cepstrum, to ‘fold’ exponentials of the cepstrum (quefrencycomponents) in the non-causal (rear) half of the cepstrum into thecausal (forward) half of the cepstrum.

The folding sequence λ_(min)[q] for ensuring the cepstrum is causal maycomprise:0<λ_(min) [q]≦2 for q=0 . . . L/2+1λ_(min) [q]=0 for q=L/2+2 . . . L−1,

where L is the window/FFT length, and q=0 . . . L−1.

More preferably, the folding sequence is cepstrally smoothed to smooththe output minimum phase spectrum. By performing smoothing at the timeof modifying the cepstrum, such embodiments may eliminate the need foruse of synthesis time domain windowing. For example, the foldingsequence may comprise:λ_(min) [q]=0.54+0.46 cos(2πq/L) for q=0 & L/2+1λ_(min) [q]=1.08+0.92 cos(2πq/L) for q=1 . . . L/2

λ_(min) [q]=0 otherwise.

In alternate embodiments, the folding sequence may comprise:λ_(min) [q]=1 for q=0 & L/2+1λ_(min) [q]=2 for q=1 . . . L/2

λ_(min)[q]=0 otherwise.

In such embodiments, a synthesis window function is preferably appliedin the time domain as part of filter synthesis, as such a foldingsequence produces an asymmetric filter impulse response which typicallypeaks very early in the finite filter length.

Once made causal, the causal cepstrum may then be converted back to acomplex numbered spectrum (logarithmically expressed minimum phasedesired gains) by FFT. Such logarithmically expressed minimum phasedesired gains may typically then be converted to linear expression bytaking the exponential. Preferably, a computationally efficienttechnique of obtaining the exponential is applied. Linearly expressedminimum phase desired gains may then be returned to the time domain byIFFT to form the basis of time domain filter synthesis.

Such embodiments, when used to produce a FIR filter having anapproximate minimum phase impulse response synthesised from such asmoothed causal cepstrum may provide for extremely low group delay formulti-band DSP algorithms, may provide improved independence of groupdelay relative to analysis or processing filter resolution, may providefor native provision for log domain sub-band processing, multi-bandcompression or expansion, anti-startle algorithms and the like, and/ormay provide improved adaptive filtering accuracy compared to comparablelinear phase methods. Such embodiments may provide reduced signaldistortion and artifacts from avoidance of overlap-add re-constructionand reduced finite precision arithmetic on signal, may provide improvedcontrol of design compromises in signal analysis vs. signal processing,may provide improved resistance to feedback from reduced delay andinherent phase variation, may provide the option to reduce computationalload by reducing signal analysis and filter update rate, and may beparticularly suitable for implementation in commonly used audio digitalsignal processors.

Where the adaptive filter is a FIR or IIR linear filter, alternateembodiments of the invention may synthesise the minimum phase filtercharacteristic by: expressing a characteristic polynomial of the filter,factoring the characteristic polynomial to locate poles and zeros of thefilter; and revising the characteristic polynomial by reciprocating eachpole and zero outside the unit circle into the unit circle, to obtain aminimum phase filter. Due to the potentially large or intractablecomputational complexity of factoring a characteristic polynomial, suchembodiments may be best suited to applications where the adaptation rateof the filter is not required to be high, to provide sufficient time forsuch computations.

In embodiments of the invention, the adaptive filter may be a single FIRfilter, a mix of filters, whether FIR or IIR, or may be non-linear suchas a neural network. Synthesising the filter characteristic in a mannerwhich approaches the desired gains may comprise ensuring that anadaptation rate of the adaptive filter remains no more than apre-defined amount, for example in order to avoid inappropriate userperceptions which might be caused by large or overly rapid filteradaptations. In such embodiments the synthesised filter characteristicmight thus approach, but not substantially match, the desired gains.Alternatively, synthesis of the time domain filter characteristic maycomprise substantially matching the filter characteristic to the desiredgains, to the extent possible when using a real time domain filter, forexample in circumstances where filter adaptation rate is not required tobe limited.

Embodiments of the invention may apply preventative measures to reducethe rate of gain variation between the desired gains, such that thesynthesised filter is more likely to be able to replicate the desiredresponse. For example, a difference between desired gains in adjacenttransform domain sub-bands may be maintained within a pre-defined limit.

Further embodiments of the invention may apply compensatory measures tomeasure the extent of gain errors, and to apply appropriate feedback forongoing iterations of generating desired gains and synthesising thefilter so as to reduce such errors.

According to a fourth aspect, the present invention provides a method ofadaptively processing an input signal, the method comprising:

passing the input signal through an adaptive time domain filter toproduce an output signal;

talking at least one of the input signal and the output signal as ananalysis signal;

transforming the analysis signal into a transform domain to produce atransformed analysis signal;

analysing the transformed analysis signal to produce a plurality ofdesired gains each corresponding to a respective transform domainsub-band;

synthesising a time domain filter characteristic which approaches piedesired gains; and

updating the adaptive filter with the synthesised filter characteristic.

According to a fifth aspect, the present invention provides a computerprogram for adaptively processing an input signal, the computer programcomprising:

code for passing the input signal through an adaptive time domain filterto produce an output signal;

code for taking at least one of the input signal and the output signalas an analysis signal;

code for transforming the analysis signal into a transform domain toproduce a transformed analysis signal;

code for analysing the transformed analysis signal to produce aplurality of desired gains each corresponding to a respective transformdomain sub-band;

code for synthesising a time domain filter characteristic whichapproaches the desired gains; and

code for updating the adaptive filter with the synthesised filtercharacteristic.

According to a sixth aspect, the present invention provides a device foradaptively processing an input signal, the device comprising:

an adaptive time domain filter for producing an output signal from aninput signal;

a transform block for taking an analysis signal from at least one of theinput signal and the output signal, and for transforming the analysissignal into a transform domain to produce a transformed analysis signal;

a processor for analysing the transformed analysis signal to produce aplurality of desired gains each corresponding to a respective transformdomain sub-band;

a filter synthesiser for synthesising a time domain filtercharacteristic which approaches the desired gains, and for updating theadaptive filter with the synthesised filter characteristic.

In embodiments of the fourth to sixth aspects of the invention theadaptive time domain filter may comprise a FIR filter, and the transformmay comprise a FFT. In such embodiments, synthesis of the filtercharacteristic may comprise: applying a linear phase to the plurality ofdesired gains; returning the linear desired gains to the nine domain byIFFT; and applying a synthesis window to truncate the output of the IFFTto produce a finite linear phase impulse response. The synthesis windowmay comprise a rectangular window, a Hamming window, a hybrid asymmetricHamming function, or other suitable window function. In alternate suchembodiments of the invention, synthesis of the filter characteristic maycomprise: returning the linear desired gains to the tie domain by IFFT;swapping and/or reordering the IFFT output to remove aliased non-causalcomponents to derive a symmetric response; and applying a synthesiswindow to truncate the symmetric response to produce a finite linearphase impulse response.

Embodiments of the present invention may be applied in conjunction withthe Adaptive Dynamic Range Optimization (ADRO) technique set out in U.S.Pat. No. 6,731,767. However, embodiments of the present invention may beapplied in conjunction with any sound processing technique whichinvolves changing the desired gain of the signal path.

It is to be appreciated that the phrase “sound signal” is used herein torefer to any signal conveying or storing sound information, and includesan electrical, optical, electromagnetic or digitally encoded signal.

BRIEF DESCRIPTION OF THE DRAWINGS

Examples of the invention will now be described with reference to theaccompanying drawings in which:

FIG. 1 is a block diagram illustrating a known FFT overlap-addmulti-band signal processing circuit;

FIG. 2 is a block diagram illustrating a known time domain filter bankfor multi band signal processing;

FIG. 3 is a block diagram of a circuit for adaptive filtering signalprocessing with feed forward offline multi band analysis, in accordancewith an embodiment of the present invention;

FIGS. 4 a and 4 b illustrate two similar filter realisations utilisingreal time windowing in accordance with a second and third embodiment ofthe invention;

FIGS. 5 a to 5 c illustrate filter synthesis, respectively showing aHamming window function, the magnitude response of the Rectangular andHamming windows, and a sample plot of ideal vs. actual synthesisedfilter responses;

FIGS. 6 a and 6 b illustrate, respectively, three Hamming windowfunctions, and the normalised magnitude responses of the three Hammingwindows;

FIGS. 7 a to 7 i are a series of plots comparing the performance of alinear phase window filter design to a cepstral minimum phaseapproximation filter design;

FIG. 8 illustrates a filter realisation block in accordance with afourth embodiment of the invention;

FIG. 9 illustrates a cepstral folding sequence for ensuring a cepstrumis causal in accordance with the fourth embodiment;

FIGS. 10 a and 10 b respectively illustrate symmetric and asymmetricsynthesis windows, and the normalised magnitude responses of thesynthesis windows;

FIG. 11 illustrates a cepstral folding and smoothing sequence forensuring a cepstrum is causal and spectrally smoothed in accordance witha fifth embodiment of the invention;

FIG. 12 illustrates a filter realisation block in accordance with thefifth embodiment of the invention;

FIGS. 13 a and 13 b are spectrograms illustrating the variation in phaseand group delay, respectively, in the response to a speech+alarm signalof an adaptive filter in accordance with the fifth embodiment;

FIG. 14 is a block diagram of a closed loop feedback structure foradaptive signal processing in accordance with a sixth embodiment of thepresent invention;

FIGS. 15 a and 15 b illustrate the simulated power spectral density, andsimulated cross correlation, respectively, of the third and fourthembodiments of the invention in response to an input signal;

FIG. 16 a is a spectrogram of an input gain specification, and FIGS. 16b to 16 g are spectrograms illustrating the response and response errorsof the third, fourth and fifth embodiments of the invention;

FIG. 17 is a block diagram illustrating implementation of the filterrealisation block of FIG. 12 within the circuit of FIG. 3;

FIG. 18 is a block diagram of a circuit for adaptive filtering signalprocessing with feed forward offline multi band analysis, and feed backgain control, in accordance with a seventh embodiment of the presentinvention;

FIG. 19 is a block diagram of a circuit for adaptive filtering signalprocessing with feed back offline multi band analysis, in accordancewith an eighth embodiment of the present invention;

FIG. 20 is a block diagram of a circuit for adaptive filtering signalprocessing with feed back offline multi band analysis, in accordancewith a ninth embodiment of the present invention;

FIG. 21 is a block diagram of a circuit for adaptive filtering signalprocessing with feed back offline multi band analysis, in accordancewith a tenth embodiment of the present invention;

FIG. 22 a is a relatively extreme audiogram, and FIG. 22 b illustratesan ADRO fitting for such an audiogram, in respect of which the casestudy simulations of FIGS. 24 and 26 were obtained;

FIGS. 23 a to 23 m illustrate the performance of the third and fifthembodiments of the invention under a telephony fitting of ADRO fornormal hearing, in response to a speech+alarm input signal;

FIGS. 24 a to 24 m illustrate the performance of the third and fifthembodiments of the invention under a hearing aid fitting of ADRO for theaudiogram of FIG. 22, in response to a speech+alarm input signal;

FIGS. 25 a to 25 m illustrate the performance of the third and fifthembodiments of the invention under a telephony fitting of ADRO fornormal hearing, in response to a speech input signal; and

FIGS. 26 a to 26 m illustrate the performance of the third and fifthembodiments of the invention under a hearing aid fitting of ADRO for theaudiogram of FIG. 22, in response to a speech input signal.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 3 is a block diagram of a circuit 300 for adaptive filtering signalprocessing with feed forward offline multi band analysis, in accordancewith an embodiment of the present invention. An adaptive time domainfilter ĝ[n] 302 processes an input signal x[n] to produce an outputsignal y[n]. As can be seen, the signal through path 304 is not impededby anything other than filter 302.

Input signal x[n] is also used as an analysis signal by being passed tobuffer 306. The output of buffer 306 is windowed at 308 by an analysiswindow w_(a)[n] and then passed through a FFT block 310. The FFT outputis converted to the logarithmic power domain by block 312 to produceanalysed input levels X_(dB)[k]. Block 314 undertakes multi-bandfrequency domain processing of the analysed input levels X_(dB)[k] inaccordance with the ADRO technique to produce desired output levelsY_(dB)[k], from which the analysed input levels X_(dB)[k] are subtractedat 316 to produce desired gains G_(dB)[k]. Filter realisation block 318takes the desired gains in order to synthesise a time domain filtercharacteristic, and updates the adaptive filter 302 to at least approachthe synthesised filter characteristic. A feedback path 320 may also beutilised by block 318 in filter synthesis.

The first embodiment of the invention set out in FIG. 3 recognises thatthe delay in the block based FFT mechanism 306, 310, 314, etc, is arequirement for the analysis of the signal x[n] only. Thus, thestructure 300 of FIG. 3 provides for multi-band processing with reducedgroup delay using a computationally efficient FFT scheme by‘de-coupling’ the signal analysis path from the processing path 304.This is achieved by using an offline analysis scheme that uses blockprocessing for the analysis path, but adapts one or more time domainfilters 302 to perform the processing of the signal x[n] at a singlesample rate or reduced block size rate.

The circuit 300 of FIG. 3 performs multi-band analysis and processingbased on log power domain (eg dB level) FFT analyses of the inputsignal, by provision of block 312. This is particularly convenient formany audio conditioning algorithms such as dynamic range compression orADRO. Nevertheless alternate embodiments may omit block 312 and forgolog power domain analysis. Similarly, the front section FFT filter-bankanalysis structure of the analysis path (306, 308, 310) prior to thecore algorithm processing (312, 314), may in alternate embodiments bereplaced with other analysis filter-bank mechanisms or other transferblocks.

The task of the filter realization block 318 is to take a specificationof desired gains G_(dB)[k] in each frequency sub-band, or transformdomain sub-band, and to synthesize an appropriate time domain filterĝ[n] having a filter magnitude response which suitably realizes the gainprofile, when applied to the main signal path 304. Because the filterĝ[n] 302 is not bound by the block processing constraints of theanalysis path, it can be operated at a reduced block size or singlesample rate. Substantial buffering can be avoided in the signal path304, and the group delay in the signal path 304 therefore becomes thatof the filter 302 alone.

In the embodiment of FIG. 3 the filter ĝ[n] is a single FIR filter.However in alternate embodiments the filter may be a mix of filters,either FIR or IIR, or may be nonlinear, such as a neural network. Interms of realizing a specific filter specification, it can be useful tocombine filter types to exploit their respective advantages and accountfor their respective weaknesses.

Because a practical filter realization process does not necessarilysynthesize the ideal or optimal filter, the feedback path 320 can alsobe used to provide feedback regarding the state of signal y[n] after thefiltering process. This provides for a more sophisticated gain controlsystem that helps the offline structure 300 achieve the required filterspecification as it changes with time.

Thus, the offline analysis circuit 300 provides for reduced group delayfor the main signal path 304, and provides for de-coupling of signalanalysis from signal processing, allowing independent and finer controlof parameters for each aspect, such as the number of channels, channelbandwidth/spacing, and delay. The circuit 300 may further utilise areduced analysis rate in the offline processing (e.g. in block 314)relative to the processing rate of the main signal path 304, which canlead to computational savings, bearing in mind the possible increasedrequirements for implementation of the filter ĝ[n] 302 in such anarrangement. Further, by undertaking fewer operations on the signal dataalong through path 304, circuit 300 may provide for reduced distortionand reduced introduction of signal processing artifacts such asquantization noise from limited precision operations, or periodic noisefrom a FFT a overlap-add synthesis reconstruction process.

The circuit 300 introduces a tie differential between signal analysisand signal processing. Thus signal changes that occur in less time thanthe time differential can propagate through the system before the systemcan respond. This might be compensated for by re-introducing someinitial delay in the main signal path, preferably being minimal delay toavoid detracting from the low delay nature of the offline processingarrangement.

It is desirable to control the rate of variation of the filter ĝ[n] 302,for example in order to avoid introduction of perceptible artifactscaused by overly rapid variation of the filter taps or coefficients. Inparticular, the rate of gain variation should not be too large relativeto the time span of the filter impulse response.

Implementation of the filter realisation block 318 may take a number offorms in accordance with different embodiments of the invention. FIGS. 4a and 4 b illustrate two similar filter realisations utilising real timewindowing in accordance with a second embodiment and a third embodimentof the invention. The embodiments of FIGS. 4 a and 4 b recognise thatone means of filter realization to determine the coefficients of an FIRfilter ĝ[n] from the log frequency domain gain specification G_(dB)[k]is by real time realization of window design for a FIR filter. FIRfilters are good candidate filters for use as filter 302 in FIG. 3,since they are all-zero and guaranteed to be stable, and therefore theirdesign is relatively free of the problems or constraints that can applyto IIR filters. The real time FIR window design method of the second andthird embodiments of the invention in FIGS. 4 a and 4 b uses acombination of an IFFT and synthesis window to find a truncated (i.e.finite) impulse response filter that is a smoothed approximation of theideal filter expressed in the desired gains G_(dB)[k]. Two largelyequivalent versions of the real time window design approach are depictedin the block diagrams of FIG. 4. The embodiments of FIGS. 4 a and 4 bdiffer in how a causal, linear phase, time symmetric impulse response isobtained.

In more detail, FIG. 4( a) shows a filter realisation block 400 whichconverts the logarithmic desired gains G_(dB)[k] to linear by taking theexponential in block 404. At 406 an appropriate non-zero constant linearphase is injected in the frequency domain prior to the IFFT 408, inorder to derive a causal, symmetric filter response directly after theIFFT 408. For example, for a filter/FFT length L, an appropriate phasefunction e^(jθ[k]) would typically be:

$\quad\begin{matrix}{{\mathbb{e}}^{{j\theta}{\lbrack k\rbrack}} = {{{\cos\left( {\theta\lbrack k\rbrack} \right)} + {j\;{\sin\left( {\theta\lbrack k\rbrack} \right)}\mspace{14mu}{where}\mspace{14mu}{\theta\lbrack k\rbrack}}} = {{- \pi}\; k}}} \\{{= {1\mspace{14mu}{for}\mspace{14mu}{even}\mspace{14mu} k}},{{- 1}\mspace{14mu}{for}\mspace{14mu}{odd}\mspace{14mu} k}}\end{matrix}$

where k=0 . . . (L−1).

The output of IFFT 408 is windowed at 410 with an appropriate synthesiswindow w_(s)[n], and the FIR filter ĝ[n] 402 is then updated with thefilter characteristic so derived.

If appropriate linear phase is not injected, then the output of IFFTprocess 408 will be non-causal and ‘time aliased’, in that the filterresponse will wrap around in the window L such that non-causalcomponents are rotated to the latter half of the window. FIG. 4 bexploits this property and presents a similar architecture to FIG. 4 a,but one that is often more computationally efficient. The filterrealisation block 420 again converts the logarithmic desired gainsG_(dB)[k] to linear by taking the exponential in block 424. Zero phaseis retained in the frequency domain by direct input to the IFFT 428,thereby avoiding the explicit injection of phase required in filterrealisation 400 of FIG. 4 a. Instead, the filter realisation 420 of FIG.4 b provides block 430 to re-order or swap halves of the output of theIFFT 428 to derive an equivalent symmetric response. The output of block430 is windowed at 432 with an appropriate synthesis window w_(s)[n] andthe FIR filter ĝ[n] 434 is then updated with the filter characteristicso derived.

The minimum group delay t₃₊₄(typ.) when using the filter realisationblocks 400 or 420 in the circuit 300 of FIG. 3, for a linear phase,symmetric FIR filter adapted using the window design method, is at worsthalf the minimum group delay for the FFT structure depicted in FIG. 1.In particular:t ₃₊₄(typ.)=L _(g)/(2*f _(s))+t _(p)

where L_(g) is the filter length, typically the same length as the FFTlength L_(FFT), and t_(p) is the computational time required to processthe filter. This computational time is typically significantly less thanthe equivalent computational time t_(p) for FIG. 1.

The impulse response filter obtained using the window design filterrealisations depicted in FIGS. 4 a and 4 b only provides anapproximation of the ideal filter described by G_(dB)[k]. The exactimpulse response equivalent of any practical frequency responseG_(dB)[k] would be infinite in length. The truncation implicit in theIFFT process provides a finite impulse response with a frequencyresponse that is effectively the ideal frequency response G_(dB)[k]convolved with the frequency response of the rectangular truncationwindow. The use of synthesis window w_(s)[n] can compensate for thetruncation process, by smoothing the spectral magnitude response, andproviding control over certain parameters in the approximation.Trade-offs in the choice of synthesis window w_(s)[n] are illustrated inFIG. 5, which compares Rectangular windows vs. Hamming windows, and someexample results when used for filter synthesis.

In more detail, FIG. 5 a is a plot of the Hamming window function, FIG.5 b plots the magnitude responses of the Rectangular and Hammingwindows, and FIG. 5 c is a plot of an example ideal response, togetherwith actual synthesized filter responses using either the rectangularwindow or the Hamming window.

FIG. 5 c shows that the use of a rectangular window for w_(s)[n] causessignificant undesirable ripple in the synthesized filter magnituderesponse. The implementation using the Hamming window for w_(s)[n] givesa much smoother response, which is particularly important for thepass-band regions of the magnitude response. However, both synthesizedfilter responses struggle to realize the full attenuation depth andwidth of the central notch in the example original gain specification.Additional measures can be used in the algorithmic structure of FIG. 3to compensate for these types of filter approximation errors, asdiscussed in the following.

Other optimizations or variations may be made to the embodiments of FIG.3, FIG. 4 a and FIG. 4 b, when using a symmetric linear phase filter.One class of optimization is to apply only a subsection of thesynthesized filter impulse response, and/or to apply a truncated orasymmetric synthesis window w_(s)[n]. While such optimization may reducethe effective resolution of the filter ĝ[n] to some extent, furtherreduction in group delay and computational load may be effected. Theanalysis also retains the full resolution provided by the original FFTlength L_(FFT).

Use of an asymmetric or truncated window w_(s)[n] is intended to reducethe lead in or rise time to peak of the final filter impulse response,thereby reducing group delay and shortening the filter. FIG. 6 a showsexample plots of length 32 and length 64 Hamming window functions, and alength 48 Hybrid-Asymmetric Hamming (HAH) window function composed ofthe first half of the length 32 Hamming window, appended with the lasthalf of the length 64 Hamming window. FIG. 6 b, illustrating thematching (normalised) magnitude functions, shows that the length 48 HAHwindow is a compromise between obtaining the group delay of a shorterlength 32 symmetric window, while retaining improved main lobe width andside-lobe attenuation, these being key properties defining the effectivefilter resolution. This compromise is useful in the practical design ofaudio signal processing systems, and notably, is straightforward withthe type of scheme depicted in FIGS. 3 & 4, whereas such a compromise isnot clearly feasible in the scheme of FIG. 1.

The symmetric, linear phase FIR filters produced by the structures ofFIGS. 4 a and 4 b when implemented in the structure of FIG. 3, providefor significantly reduced group delay when compared with the FFToverlap-add structure depicted in FIG. 1. However, embodiments of thepresent invention further recognise that strict phase linearity is notactually a requirement for many audio processing applications, forexample because minor phase distortion has been found to beimperceptible in most cases. The present invention recognises thatsignificant advantages may be offered by use of an in-line real timeadaptive filter or filters having non-linear phase while retainingequivalent magnitude response.

The present invention further recognises that, of non-linear phasefilters, minimum phase filters are well suited for low group delaymagnitude response conditioning. By definition a minimum phase filterrepresents the unique, causal realization of a given magnitude responsewith minimum group delay for a given filter order. A minimum phasefilter is defined as having both a causal and stable transfer function(poles inside the unit circle), and causal and stable inverse transferfunction (zeroes inside the unit circle). Since FIR filters are entirelycharacterized by their zeroes, one way to obtain the minimum phaseversion of any FIR filter is to directly factor the characteristicpolynomial, and reciprocate zeroes that lie outside the unit circle,into the unit circle. For example, for a given FIR filter transferfunction H(z), with a zero at q that lies outside the unit circle, thetransfer function can be factored as follows:

$\quad\begin{matrix}{{H(z)} = {{H_{A}(z)}\left( {1 - {qz}^{- 1}} \right)}} \\{= {\underset{\underset{H_{B}{(z)}}{︸}}{{H_{A}(z)}\left( {1 - {q^{- 1}z^{- 1}}} \right)}\underset{\underset{{All}\mspace{14mu}{pass}\mspace{14mu}{H_{ap}{(z)}}}{︸}}{\left( {1 - {qz}^{- 1}} \right)/\left( {1 - {q^{- 1}z^{- 1}}} \right)}}} \\{= {{H_{B}(z)}{H_{ap}(z)}}}\end{matrix}$

where H_(ap)(z) is an all-pass filter, and H_(B)(z) retains themagnitude response of H(z), but has altered phase, with the zero(s)reciprocated into the unit circle.

In practice, factoring an FIR filter polynomial can be a difficult oreven intractable mathematical problem, particularly as the filter lengthincreases. Therefore, obtaining the minimum phase filter for a timevarying filter specification using the direct factoring technique inreal time may not be practical in many real time applications. Oneoption might be to obtain (in non-real time) a fixed ‘quasi’ minimumphase profile for an average or equilibrium of the filter magnituderesponses expected, and to apply this phase to all frequency domainfilter specifications, regardless of their magnitude response. However,the minimum phase characteristic of a given magnitude response is bydefinition unique, and the causality for the resultant filter is onlyguaranteed when the matching minimum phase for a given magnituderesponse is applied. Therefore, application of a fixed ‘quasi’ minimumphase is only likely to be practical when the magnitude responsevariation is expected to be small or is very heavily bounded, or whensufficient computational resources are available to performfactorisation within the timeframe required by the application.

An alternate method for deriving the minimum phase for a given magnituderesponse recognises and exploits a particular property of the real orcomplex cepstrum (the cepstrum being the inverse discrete Fouriertransform of the log magnitude or log complex spectrum). The cepstrumproperty of interest is that the cepstrum is ‘causal’ if and only ifboth the poles and zeroes of the transfer function are inside the unitcircle—i.e. the filter is minimum phase. Therefore, by subjecting thereal cepstrum of the log magnitude spectrum to an appropriate ‘foldingsequence’, the phase can be adjusted to be minimum without altering thespectral magnitude response. In accordance with such embodiments of theinvention, the folding sequence effectively folds exponentials (termed‘quefrency’ components) in the ‘non-causal’ (back) half of the cepstruminto the ‘causal’ (forward) half of the cepstrum. The adjusted cepstrumcan then be converted back to a complex numbered spectrum via thediscrete Fourier transform and complex exponential, and be used todesign a time domain FIR filter.

FIGS. 7 a to 7 i are a series of plots comparing the results of nonreal-time filter design using the linear phase window design method ofFIG. 4 b, and a cepstral minimum phase approximation method. FIG. 7 ashows two example target magnitude responses for the filter designprocess.

The synthesized filter impulse responses of the linear phase method andthe cepstral minimum phase method are shown in FIGS. 7 b and 7 c,respectively. Note that the peak in the impulse response in the minimumphase case lies at the start of the finite impulse response window inFIG. 7 c. The magnitude responses of the linear phase method and thecepstral minimum phase method are shown in FIGS. 7 d and 7 e,respectively, and are highly similar.

The resulting filter phases of the linear phase method and the cepstralminimum phase method are shown in FIGS. 7 f and 7 g, respectively. Whilethe filter phase of the cepstral minimum phase filter is non-linear, itvaries over a relatively very small phase range. The calculated filtergroup delay, in samples vs. frequency, of the linear phase method andthe cepstral minimum phase method are shown in FIGS. 7 h and 7 i,respectively. FIG. 7 i illustrates the very low or negative group delayfor the cepstral minimum phase approximation method. The negativecomponents suggest the filter is non-causal, but in reality this is notpossible. In this respect, the group delay plot of FIG. 7 a fornon-linear phase systems is not necessarily an ideal representation oftime delay. Instead, the variation in the group delay with frequency iswhat is known as ‘group delay distortion’.

The present invention further recognises the possibility and advantagesof applying and/or optimizing the properties of the cepstrumsubstantially in real time to provide for adaptive minimum phasefilters. Such adaptive minimum phase filters may be particularlyapplicable for implementation of the filter 302 in the adaptivemulti-band signal processing scheme of FIG. 3.

FIG. 8 illustrates a filter realisation block 800 in accordance with afourth embodiment of the invention, using the cepstral minimum phaseapproximation technique for filter realization in the type of structuredepicted in FIG. 3. An important advantage in combining the structuresof FIGS. 3 & 8 is that block 312 provides for the core processing to beperformed in the log domain (dB or other basis) prior to gaincalculation and filter realization. This is particularly convenient forcepstrum calculations which require the input to be in the log domain.Therefore, in the flow of FIG. 3, the filter gain specification given bythe real logarithmic gain values G_(dB)[k] can be input directly to IFFT804 for initial calculation of the real cepstrum c[q] in the flow of thefilter design process of FIG. 8.

Once the real cepstrum c[q] of the log gain specification is calculated(c[q]=IFFT(G_(dB)[k])), it is element-wise multiplied at 806 by afolding sequence λ_(min)[q] to produce a modified cepstrumĉ_(min)[q]=λ_(min)[q]◯ c[q]. In the present embodiment, the foldingsequence λ_(min)[q] is:

$\quad\begin{matrix}{{\lambda_{\min}\lbrack q\rbrack} = 1} & {{{{for}\mspace{14mu} q} = {{{0\&}\mspace{11mu}{L/2}} + 1}},} \\{= 2} & {{{{for}\mspace{14mu} q} = {1\mspace{14mu}\ldots\mspace{14mu}{L/2}}},} \\{= 0} & {{otherwise},}\end{matrix}$

where L is the window/FFT length, and q=0 . . . L−1. An example cepstrumfolding sequence λ_(min)[q] for the case of L=64 is plotted in FIG. 9.

The modified cepstrum ĉ_(min)[q] is then input to FFT block 808 whichcalculates the complex logarithmic phase modified spectrum G_(dB,min)[k](G_(dB,min)[k]=FFT(ĉ_(min)[q]). To obtain the complex linear phasemodified spectrum G_(min)[k], the exponent of G_(dB,min)[k] iscalculated by block 810, so that G_(min)[k]=exp(G_(dB,min)[k]). In thecase where G_(dB)[k] was calculated with a natural logarithm basis, thedirect form of Euler's relation for z=a+bi can be used:exp(z)=e ^(z) =e ^(a)(cos b+i sin b)

Similar, alternative forms of this relation can be used whenG_(dB,min)[k] is in an alternative or adjusted logarithm basis domain(e.g. base 2 or dB).

IFFT block 812 then returns the complex linear phase modified spectrumG_(min)[k] to the time domain, where it is windowed at 814 with aappropriate synthesis window ws[n] to produce an approximate minimumphase impulse response to define the filter 802 as a minimum phasefilter ĝ_(min)[n]=IFFT(G_(min)[k]) ◯ w_(s)[n].

Care is required in FIG. 8 regarding the choice of an appropriatesynthesis window function w_(s)[n]. Because the un-windowed minimumphase impulse response is not symmetric, and typically peaks very earlyin the finite filter length, a convenient window function to obtain wellcontrolled spectral smoothing may not be apparent. As comparison, FIG.5( c) demonstrates the importance of the window function and spectralsmoothing to the magnitude response of the filter in the symmetric,linear phase case.

For the case where the minimum phase impulse response is expected topeak at the start, an initial solution might be to apply an asymmetricwindow such as the tail side of a conventional window function, e.g. aHamming window or Hanning window or the like, padded with zeros, for useas the synthesis window function w_(s)[n]. This has been trialled, butin practice suffers several problems. Because the effective peaklocation or group delay of the minimum phase impulse response is notconstant, the effect of the window function on the final magnituderesponse will vary as the input magnitude response itself varies.Furthermore, a single sided asymmetric window function loses much of thespectral resolution of its symmetric counterpart. FIG. 10 shows thewindow functions (FIG. 10 a) and resulting normalised magnituderesponses (FIG. 10 b) for L=32 & L=64 single sided asymmetric Hammingwindows, compared with an L=64 symmetric Hamming window, when used inthe filter realisation block 800. These outputs can be compared to thewindow asymmetry effects seen in FIG. 6.

While these or other windows may in some embodiments of the inventionprove suitable for appropriate applications, an alternate cepstralimplementation of filter realisation has been recognised by the fifthembodiment of the present invention. Rather than attempt to choose orsynthesize an asymmetric time domain window w_(s)[n], spectral smoothingof the filter specification is obtained by recognising and exploitinganother property of the cepstrum, referred to as cepstral smoothing,cepstral homomorphic filtering or ‘liftering’. The goal of suchsmoothing is to apply a low-pass or single sided function to weight theends of the cepstrum. Since the ‘high exponential’ or ‘high quefrency’components of the cepstrum generally represent the faster variations inthe spectral domain, the spectrum can be smoothed if these componentsare weighted down relative to the ‘low exponential’ or ‘low quefrency’components.

Cepstral filtering is therefore ideal for smoothing the minimum phasespectrum prior to truncation for the finite impulse response in theadaptive filter design application of the present invention. Indeed, thepresent embodiment recognises that the operation to perform thesmoothing can be the same operation which applies the cepstral foldingsequence to obtain the filter minimum phase. This is an elegantsolution, since improved spectral smoothing can be obtained compared touse of a time domain asymmetric window w_(s)[n], while at the same timecomputational complexity and memory requirements are reduced.

In the present embodiment the cepstral smoothing or littering sequenceφ_(s)[q] for spectral smoothing of the filter magnitude responseexploits a reverse Hamming function without padding:φ_(s) [q]=0.54+0.46 cos(2πq/L)

where L is the window/FFT length, and q=0 . . . L−1. Other sequences forcepstral smoothing and folding are also possible. Since this smoothingsequence can be applied to the cepstrum in the same operation in whichthe folding sequence λ_(min)[q] is applied, a single combined foldingand smoothing sequence ψ_(min)[q] is simply derived by the element-wisemultiplication:ψ_(min) [q]=λ _(min) [q] ◯ φ _(s) [q]

An example plot of the combined folding and smoothing sequenceψ_(min)[q] for L=64 is shown in FIG. 11.

Utilising such an optimised cepstral folding and smoothing techniqueprovides for a real time adaptive filter realisation block 1200 as shownin FIG. 12. In that filter realisation, the logarithmic desired gainsG_(dB)[k] are converted to the real cepstrum c[q] by IFFT block 1204 sothat c[q]=IFFT(G_(dB)[k]). At 1206 the cepstrum c[q] is element-wisemultiplied by the combined cepstral folding and smoothing sequenceψ_(min)[q] to generate the modified cepstrum ĉ_(min)=[q]=ψ_(min)[q] ◯c[q]. The modified cepstrum ĉ_(min)[q] is then input to FFT block 1208to obtain the complex phase modified smoothed logarithmic spectrumG_(dB,min)[k]=FFT(ĉ_(min)[q]), from which the linear complex phasemodified smoothed spectrum G_(min)[k] is determined by block 1210, whichtakes the exponential so that G_(min)[k]=exp(G_(dB,min)[k]). The linearcomplex phase modified smoothed spectrum G_(min)[k] is then returned tothe time domain by IFFT 1212, to produce an approximate minimum phaseimpulse response to define the filter 1202 as a minimum phase filterĝ_(min)[n]=IFFT(G_(min)[k]).

The filter synthesis of the embodiment of FIG. 12 thus involvessimplified processing compared to the embodiment of FIG. 8, byeliminating synthesis windowing in the time domain. This method furtherprovides improved smoothing of the specification filter spectrum andreduced computational complexity over the scheme in FIG. 8.

The present invention thus recognises and overcomes a number of issuesin order to use the cepstral minimum phase approximation for real timemulti-band processing. In particular, the use and implementation of asuitable host processing structure such as the structure of FIG. 3, theefficient implementation of the additional computational steps required,including FFT/IFFT's, logarithm, and the complex exponential, the choiceof filter synthesis window function or spectral smoothing means,maintaining constraints on filter phase distortion and temporalvariation for a given application, and optimising filter errors andsynthesis behaviour for large and/or fast magnitude response variations.

An important issue with the real time filter design structures of FIGS.4, 8 and 12 is that the design process only produces a filter ĝ[n] thathas the approximate magnitude response of the gain specificationG_(dB)[k]. The approximation error for each synthesized filter isdependent on both the input gain specification G_(dB)[k] and the designmethod. Typically, filter specifications G_(dB)[k] with particularlylarge levels of variation (eg multiple notch filters) will be realizedless accurately than a spectrally smooth filter specification. FIG. 5(c) demonstrates some of these magnitude response errors.

An additional set of important effects are also unique to the filtersdesigned by the schemes of FIGS. 8 and 12. Because these filters havenon-linear, time varying phase, the group delay can actually vary withtime and frequency, dependent on the input gain specification G_(dB)[k].This variation also tends to be more marked when the variation in thegain specification across frequency is large. That is, when large peaksor troughs (notches) appear in the input gain specification, thesynthesized approximate minimum phase will have greater variation, andthe group delay and group delay variation tend to increase. Importantlyhowever, in implementations and testing to date such variation has notbeen found to be perceivable, or significant in any other sense. Notethat this may also be an advantage, since the natural phase variationwith time is less likely to support feedback, for example.

FIG. 13 illustrates some of these effects. FIG. 13 a is a plot of phase(in radians) vs. frequency and time for a time varying filterimplemented with cepstral techniques and adapted by way of the ADROalgorithm in response to a speech+alarm input signal. The alarm signaloccurs relatively centrally in time, over a relatively narrow frequencyregion of the input signal. ADRO tends to introduce strong attenuationin the time and frequency location of the alarm relative to the gainsfor the rest of the input. Note that the phase ‘trough’ in FIG. 13 a,generally in the region of 1000 Hz over the time period 8-22 seconds, isthe largest variation in phase and is roughly in a common time andfrequency location with the location of the alarm components in theinput signal and is thus associated with the ADRO compensating gainreduction.

FIG. 13 b shows the effect of this phase variation on the filter groupdelay (in samples, limited to 0 minimum) vs. time and frequency. For theduration of the alarm and the ADRO attenuation, the group delay of theneighbouring (un-attenuated) frequency regions is apparently increased.However, the group delay is nevertheless relatively very low throughoutthe whole spectrum for the duration of the signal.

In practice, a number of measures can be taken in a processing schemesimilar to that depicted in FIG. 3 to allow for a variety of designapproximation or error effects. These measures can be classed as eitherpreventative to avoid occurrence of the effects, or as compensatory toanalyse and reduce the possible consequences of occurrence of theeffects.

Such preventative measures can be targeted at reducing the rate of gainvariation in the filter specification G_(dB)[k] across sub-bands, sothat the synthesized filters are more likely to attain the peaks ortroughs of the gain specification. Particularly for the purposes ofapplying sufficient attenuation to limit output levels, adjustment ofG_(dB)[k] prior to filter synthesis can assist in the filter obtainingthe levels of attenuation in the minima of the gain specification. Thesemeasures include application of minimum and maximum gains overG_(dB)[k], and/or further spectrally smoothing G_(dB)[k], to reducerelative gain variation.

Compensatory measures are normally based on measuring the extent of gainerrors, and compensating the output or specification G_(dB)[k]accordingly. These measures usually form part of a more sophisticatedgain control mechanism on the specification G_(dB)[k] prior to thefilter realization means in FIG. 3, or as an alternative to FIG. 3 inwhich feedback is provided. Specific measures forming part of a moreadvanced gain control in FIG. 3 include implementing a feed-back pathfrom the output signal after filter application, to a gain controllerthat can analyse the effective difference between desired and attainedgain levels, and further compensate G_(dB)[k] to optimize the filter tospecific criteria (eg guaranteeing minima for limiting purposes).

Another class of measure predicts a particular level of gain variationthat can be successfully attained by the filter design, and appliesappropriate additional filtering measures in the signal path for levelsof gain variation that exceed the maximum. These additional filteringmeasures can also include simply additional full-band gain, oradditional adaptive IIR or FIR filters for example.

Note that a feed-back form of the structure in FIG. 3 naturally reduceserror by operating in closed loop form. Such a structure is depicted inFIG. 14. This structure is particularly well suited to applicationswhere the core processing is output referred and/or varies gain atrelatively slower rates, since the feedback, closed loop form is subjectto stability constraints imposed by the analysis rate. ADRO processingin a hearing aid, with slower time constants and slower acting maximumoutput limits, is likely to be well suited to this form of the scheme.

Further, the cepstral minimum phase design mechanisms of FIGS. 8 and 12in particular require a number of additional signal processing stagesover the linear phase design mechanisms in FIG. 4. These additionalstages include an additional FFT, IFFT, and the complex exponent. Animportant feature of the schemes of FIGS. 8 and 12 is that they canexploit the very efficient FFT/IFFT hardware blocks often provided inmodern audio digital signal processors. Therefore, the processing forthe additional FFT/IFFT required in these schemes can be performedalmost ‘for free’ on such DSP architectures, that is, at very lowadditional computational complexity and power cost. Even in modern DSP'swithout FFT/IFFT hardware assistance, the additional load to perform anadditional FFT/IFFT at the analysis or filter design rate required formany audio conditioning algorithms such as ADRO is typically very low,particularly as a percentage of the resources available.

The complex exponential of blocks 810 and 1210 therefore often becomesthe most computationally complex additional requirement for the schemesin FIGS. 8 and 12. By Euler's relation, calculation of the complexexponential is accomplished by calculation of a standard exponential ofa real number (the real part), combined with calculation of the sine andcosine of another common real number (the imaginary part). That is,exp(z)=exp(a+bi)=exp(a).(cos b+i sin b). It is noted that a furtheradvantage of the schemes of FIGS. 3, 4, 8, 12 and 14 is that many moderndigital signal processors provide hardware assistance for thecalculation of the real logarithm and exponent, at least in base 2.Therefore, the real logarithm and exponent at another basis can beperformed very efficiently by usage of the hardware assisted function,combined with an appropriate factor. For the case of a natural basis loggain specification G[k]=z=a+bi=log_(n)(c+di), and an available base 2exponential function, the present invention recognises that the complexexponent can be calculated in a straightforward manner:c+di=2^(a.log 2c).(cos b+i sin b)

However, the log gain specification is often effectively in a basisother than natural (base 2 or dB for example). Therefore, in thegeneralized case where the gain specificationG[k]=z=a+bi=p.log_(k)(c+di), and the base 2 exponential is available, wehave:c+di=2^(a.log 2(k)/p).(cos(b.log_(n)(k)/p)+i sin(b.log_(n)(k)/p))

For example, when G[k] is in dB,G _(dB) [k]=a+bi=20 log₁₀(c+di),c+di≈2^(0.1661*a).(cos(0.1151*b)+i sin(0.1151*b))

The remaining task is to calculate the sine and cosine of the imaginarypart This can be relatively easily accomplished by common approximationmethods such as an interpolated look-up table, polynomial approximation,or CORDIC (COordinate Rotation DIgital Computer) algorithm for example.The approximation is often optimized to find both sine and cosine at thesame time, and to minimize a particular form of approximation error, egmax or mean error in sine or cosine component, or the combined error(sum of squares for example). In the case of the current application,minimization of error in the resultant magnitude (sum of squares) islikely to be most desirable, since magnitude errors are likely to bemore significant than phase errors.

The cepstral minimum phase schemes of FIG. 8 or 12 were tested insimulations using Matlab. This testing has focused on comparing theperformance of the schemes of FIGS. 4, 8 and 12 when combined with thestructure of FIG. 3, while processing signals with the ADRO algorithm. Anumber of ‘corner case’ input signals and ADRO configurations andfittings were trialled to validate and compare the methods.

FIGS. 15 a and 15 b illustrate the simulated power spectral density, andsimulated cross correlation, respectively, of the third and fourthembodiments of the invention in response to an input signal. The ADROalgorithm was applied to an input speech signal using the thirdembodiment (of FIG. 4 b) and fourth embodiment (of FIG. 8),respectively. A length 128 filter/FFT length was used to effectivelyprovide 65 ADRO channels, with a sample rate of 16 kHz, for an extremeset of hearing aid target parameters. FIG. 15( a) shows a plot of thepower spectral density of the input signal, and the output signals forthe third and fourth embodiments. It is noted that the hearing aidfitting causes a heavy high frequency emphasis in the output, but boththe symmetric linear phase output of the third embodiment, and thecepstral minimum phase output of the fourth embodiment, have nearlyidentical power spectral densities. Informal listening tests alsoindicated there was no perceivable difference between the outputs, andthat they were each consistent with correct operation for ADRO. FIG. 15(b) shows the relevant cross correlation lags, for the cross correlationof each output with the input. The peak locations in these plots showthat while the measured signal delay of the third embodiment linearphase version is around 4 ms, the measured signal delay of the fourthembodiment cepstral minimum phase version is very low, around ˜0.1 ms.

Further modeling was performed to examine the relative gain accuracy ofthe filter design schemes in more detail. The third embodiment (linearphase) and fourth and fifth embodiments (cepstral minimum phase) wereused in a test case with ADRO and a speech input combined with a highlevel narrowband alarm signal for part of the signal. A telephony ADROfitting was used with a sample rate of 8 kHz, and filter/FFT length of32, for effectively 17 processing channels. FIG. 16 compares some of theresults for the time varying magnitude response of each scheme.

FIG. 16( a) shows the original ADRO gains forming the input gainspecification (i.e. desired gains) in dB vs. time and frequency. FIGS.16( b) to (d) show the time varying magnitude response of the filter indB for the embodiments of FIG. 4 b, FIG. 8 and FIG. 12, respectively.Panels 16(e) to (g) show the corresponding gain errors in dB when themagnitude responses of FIGS. 16( b) to 16(d) are compared with theoriginal gain specification in 16(a). Measured characteristics for eachembodiment are given in the table below:

Third Embodiment Fourth Embodiment Fifth Embodiment RMS error (dB): 3.032.43 1.77 Max. |error| (dB): 15.35 21.71 6.31 Mean delay (ms): 2.00 0.230.17

These characteristics, and the plots of FIG. 16, show that not only doesthe cepstral minimum phase scheme of the fifth embodiment cause muchlower group delay than the linear phase scheme of the third embodiment,but both rms and maximum absolute gain errors are also reduced.Importantly, this suggests the combined cepstral smoothing and minimumphase translation not only improves group delay but improves theperformance of the filter magnitude response as well.

The results indicated by FIG. 16 have been further explored by exposingthe linear phase third embodiment and cepstral minimum phase fifthembodiment to a wider array of conditions while processing the ADROalgorithm. FIGS. 22 to 26 provide more detail on this testing.

The case study simulations were performed using a non-real time model ofthe signal processing systems in Matlab. A structure similar to FIG. 3was implemented, and the third embodiment (FIG. 4 b), fourth embodiment(FIG. 8), and fifth embodiment (FIG. 12) filter synthesis schemes wereseparately trialled in the structure to compare performance. Because theimmediate end application of the invention is processing of the ADROaudio processing algorithm, the schemes were trialled in a series ofpractical ADRO configuration and input signal scenarios. Theseconfigurations included:

-   -   1. Telephony ADRO, fast adaptive gain slew rates, L=32, 17        channels, 8 kHz sample rate;    -   2. Hearing aid ADRO, fast adaptive gain slew rates, L=128, 65        channels, 16 kHz sample rate; and    -   3. Hearing aid ADRO, fixed slow slew rates, L=128, 65 channels,        16 kHz sample rate.

Note that several ADRO ‘fittings’ or target parameter sets were trialledfor the hearing aid configurations. A key test case was a relativelyextreme fitting for a severe audiogram developed in an actual fittingwith a subject. This audiogram and the corresponding ADRO parameters areshown in FIG. 22. FIG. 22 a is the relatively extreme audiogram, andFIG. 22 b illustrates the ADRO fitting parameters for such an audiogram.

A series of audio test signals were applied in the simulations to obtainADRO's natural response in terms of gain vs. time and frequency. Theinput signals tested included:

-   -   4. Several speech only signals;    -   5. Several speech signals with high or low frequency emphasis;    -   6. A speech signal with additional high level alarm during part        of the speech period; and    -   7. Acoustic shock protection testing signals from the Telstra        TT4 specification.

The case study results of Table 1 below were composed from testing theADRO configurations (1) and (2) (with extreme fitting), and inputsignals (4) and (6). A fill set of additional plots showing the timeorder behaviour of the input gain specification produced by ADRO, andthe resulting behaviour of the third embodiment and fifth embodiment, isshown for each case study in FIGS. 23 to 26, in which plots of theperformance of the third embodiment are on the left (e.g. FIGS. 23 b, 23d, 23 f, 23 h and 23 j), while plots of the performance of the fifthembodiment are on the right (e.g. FIGS. 23 c, 23 e, 23 g, 23 i and 23k).

In particular, FIGS. 23 a to 23 m illustrate the performance of thethird and fifth embodiments of the invention under a telephony fittingof ADRO for normal hearing, in response to a speech+alarm input signal.FIG. 23 a is a plot of the input gain specification (i.e. desired gains)in dB vs. frequency and time. FIGS. 23 b and 23 c are plots of thefilter magnitude response in dB, of the third embodiment and fifthembodiment, respectively. FIGS. 23 d and 23 e are plots of the gainerror in dB, of the third embodiment and fifth embodiment, respectively.FIGS. 23 f and 23 g are plots of the group delay in samples, of thethird embodiment and fifth embodiment, respectively. FIGS. 23 h and 23 iare plots of the filter impulse response, of the third embodiment andfifth embodiment, respectively. FIGS. 23 j and 23 k are plots of thefilter phase in radians, of the third embodiment and fifth embodiment,respectively. Note the radians scale of FIG. 23 k is much reducedcompared to the radians scale of FIG. 23 j. FIG. 23 l is a plot of thecausal half of the cepstrum c[q] (i.e. pre-modification), and FIG. 23 mis a plot of the causal half of the cepstrum ĉ_(min)[q] (i.e.post-modification).

FIGS. 24 a to 24 m (FIG. 24) illustrate the performance of the third andfifth embodiments of the invention under a hearing aid fitting of ADROfor the audiogram of FIG. 22, in response to a speech +alarm inputsignal. FIG. 24 a is a plot of the input gain specification (i.e.desired gains) in dB vs. frequency and time. FIGS. 24 b and 24 c areplots of the filter magnitude response in dB, of the third embodimentand fifth embodiment, respectively. FIGS. 24 d and 24 e are plots of thegain error in dB, of the third embodiment and fifth embodiment,respectively. FIGS. 24 f and 24 g are plots of the group delay insamples, of the third embodiment and fifth embodiment, respectively.FIGS. 24 h and 24 i are plots of the filter impulse response, of thethird embodiment and fifth embodiment, respectively. FIGS. 24 j and 24 kare plots of the filter phase in radians, of the third embodiment andfifth embodiment, respectively. Note the radians scale of FIG. 24 k ismuch reduced compared to the radians scale of FIG. 24 j. FIG. 24 l is aplot of the causal half of the cepstrum c[q] (i.e. pre-modification),and FIG. 24 m is a plot of the causal half of the cepstrum ĉ_(min)[q](i.e. post-modification).

FIGS. 25 a to 25 m illustrate the performance of the third and fifthembodiments of the invention under a telephony fitting of ADRO fornormal hearing, in response to a speech input signal. FIG. 25 a is aplot of the input gain specification (i.e. desired gains) in dB vs.frequency and time. FIGS. 25 b and 25 c are plots of the filtermagnitude response in dB, of the third embodiment and fifth embodiment,respectively. FIGS. 25 d and 25 e are plots of the gain error in dB, ofthe third embodiment and fifth embodiment, respectively. FIGS. 25 f and25 g are plots of the group delay in samples, of the third embodimentand fifth embodiment, respectively. FIGS. 25 h and 25 i are plots of thefilter impulse response, of the third embodiment and fifth embodiment,respectively. FIGS. 25 j and 25 k are plots of the filter phase inradians, of the third embodiment and fifth embodiment, respectively.Note the radians scale of FIG. 25 k is much reduced compared to theradians scale of FIG. 25 j. FIG. 25 l is a plot of the causal half ofthe cepstrum c[q] (i.e. pre-modification), and FIG. 25 m is a plot ofthe causal half of the cepstrum ĉ_(min)[q] (i.e. post-modification).

Finally, FIGS. 26 a to 26 m (FIG. 26) illustrate the performance of thethird and fifth embodiments of the invention under a hearing aid fittingof ADRO for the audiogram of FIG. 22, in response to a speech inputsignal. FIG. 26 a is a plot of the input gain specification (i.e.desired gains) in dB vs. frequency and time. FIGS. 26 b and 26 c areplots of the filter magnitude response in dB, of the third embodimentand fifth embodiment, respectively. FIGS. 26 d and 26 e are plots of thegain error in dB, of the third embodiment and fifth embodiment,respectively. FIGS. 26 f and 26 g are plots of the group delay insamples, of the third embodiment and fifth embodiment, respectively.FIGS. 26 h and 26 i are plots of the filter impulse response, of thethird embodiment and fifth embodiment, respectively. FIGS. 26 j and 26 kare plots of the filter phase in radians, of the third embodiment andfifth embodiment, respectively. Note the radians scale of FIG. 26 k ismuch reduced compared to the radians scale of FIG. 26 j. FIG. 26 l is aplot of the causal half of the cepstrum c[q] (i.e. pre-modification),and FIG. 26 m is a plot of the causal half of the cepstrum ĉ_(min)[q](i.e. post-modification).

Informal listening tests confirmed no perceivable imperfections ordifferences between the processed output signals for the case studytests of the third embodiment and fifth embodiment. The table followinghowever provides a summary of the key quantitative results. Root meansquare (rms) gain error, maximum absolute gain error, and mean groupdelay values were calculated across time and frequency for theprocessing in each case study. These results appear to confirm thefindings from FIG. 16, indicating the fifth embodiment cepstral minimumphase and cepstral smoothing scheme actually reduces filter synthesiserror in most cases, while nearly eliminating group delay.

Third embodiment Fifth embodiment Symmetric, Linear Cepstral MinimumPhase Phase rms max. mean rms max. mean f_(s) err. |err.| T_(d) err.|err.| T_(d) #. Input Fitting N (Hz) (dB) (dB) (ms) (dB) (dB) (ms) 1Alarm Telephony 17  8k 3.03 15.35 2.00 1.77 6.31 0.17 2 Alarm HearingAid 65 16k 1.11 9.63 4.00 0.68 4.33 0.11 3 Speech Telephony 17  8k 0.842.59 2.00 0.92 3.45 0.05 4 Speech Hearing Aid 65 16k 0.35 2.04 4.00 0.331.81 0.06

It will be appreciated by persons skilled in the art that numerousvariations and/or modifications may be made to the invention as shown inthe specific embodiments without departing from the spirit or scope ofthe invention as broadly described. For example alternate architecturesmay be exploited within the scope of the present invention, and someexample alternate architectures ale illustrated in FIGS. 18 to 21.

FIG. 18 is a block diagram of a circuit for adaptive filtering signalprocessing with feed forward offline multi band analysis, and feed backgain control, in accordance with a seventh embodiment of the presentinvention. FIG. 19 is a block diagram of a circuit for adaptivefiltering signal processing with feed back offline multi band analysis,in accordance with an eighth embodiment of the present invention.

FIG. 20 is a block diagram of a circuit for adaptive filtering signalprocessing with feed back offline multi band analysis, in accordancewith a ninth embodiment of the present invention. The circuit of FIG. 20is essentially the FIG. 3 arrangement converted to feedback form, withthe addition of block z^(−m). As the difference between the desiredoutput levels Ý_(dB)[k] and analysed output levels Y_(dB)[k] is theadditional required gain required from the filter realisation, theaddition of the filter gains from the previous iteration of the filterrealisation by way of block z^(−m) yields the full desired gainsG_(dB)[k] for the subsequent iteration of the filter realisation. Incontrast to FIG. 14 in which the output of the multi-band frequencydomain processing block is desired gins, the output of the multi-bandfrequency domain processing block in FIG. 20 is desired output levels.In FIG. 20, the translation from desired output levels to desired gainsis included as part of the filter realization block, instead of beingpart of the multi-band frequency domain processing block as is the casein FIG. 14.

FIG. 21 is a block diagram of a circuit for adaptive filtering signalprocessing with feed back offline multi band analysis and cepstralminimum phase filter synthesis, in accordance with a tenth embodiment ofthe present invention. In contrast to FIG. 19 in which the output of themulti-band frequency domain processing block is desired gains, theoutput of the multi-baud frequency domain processing block in FIG. 21 isdesired output levels. Block z^(−m) in FIG. 21 performs a comparablerole to block z^(−m) in FIG. 20. The present embodiments are, therefore,to be considered in all respects as illustrative and not restrictive.

1. A method executed by a signal processor for adaptively processing an input signal, the method comprising: electronically passing the input signal through an adaptive time domain filter to produce an output signal; taking at least one of the input signal and the output signal as an analysis signal; electronically transforming the analysis signal into a frequency domain to produce a transformed analysis signal; analysing the transformed analysis signal to produce a plurality of desired gains each corresponding to a respective frequency domain sub-band; synthesising a minimum phase time domain filter characteristic which approaches the desired gains by: obtaining the cepstrum (IFFT) of the logarithmically expressed desired gains; ensuring the cepstrum is causal; and taking the FFT of the causal cepstrum to produce logarithmically expressed minimum phase desired gains; and electronically updating the adaptive filter with the synthesised filter characteristic.
 2. The method of claim 1 wherein ensuring the cepstrum is causal comprises electronically applying a folding sequence λ_(min)[q] to the cepstrum, to fold exponentials of the cepstrum quefrency components in the non-causal rear half of the cepstrum into the causal forward half of the cepstrum.
 3. The method of claim 2 wherein the folding sequence is also a cepstral smoothing sequence.
 4. The method of claim 2 wherein a synthesis window function is applied in the time domain as part of filter synthesis for spectral smoothing.
 5. The method of claim 4 wherein the synthesis window function comprises one of a rectangular window, a Hamming window, and a hybrid asymmetric Hamming function.
 6. The method of claim 2 further comprising: converting the causal cepstrum back to a complex numbered spectrum (logarithmically expressed minimum phase desired gains) by FFT; converting the logarithmically expressed minimum phase desired gains to linear expression by taking the exponential; and returning the linearly expressed minimum phase desired gains to the time domain by IFFT to form the basis of time domain filter synthesis.
 7. The method of claim 2 wherein the folding sequence λ_(min)[q] for ensuring the cepstrum is causal comprises: 0<λ_(min) [q]<2 for q=0 . . . L/2+1 λ_(min) [q]=0 for q=L/2+2 . . . L−I, where L is the window/FFT length, and q=0. . . L−1.
 8. The method of claim 2 wherein the folding sequence λ_(min)[q] comprises: λ_(min) [q]=0.54+0.46cos(2πq/L) for q=0 & L/2+1 λ_(min) [q]=1.08+0.92cos(2πq/L) for q=1 . . . L/2 λ_(min)[q]=0 otherwise.
 9. The method of claim 2 wherein the folding sequence λ_(mjn)[q] comprises: λ_(min) [q]=1 for q−0 & L/2+1 λ_(min) [q]=2 for q=L. L/2 λ_(min)[q]=0 otherwise.
 10. The method of claim 1 wherein the adaptive filter is a FIR filter, and wherein synthesis of the minimum phase filter characteristic comprises: expressing a characteristic polynomial of the FIR filter; factoring the characteristic polynomial to locate poles and zeros of the FIR filter; and revising the characteristic polynomial by reciprocating each pole and zero outside the unit circle into the unit circle, to obtain a minimum phase FIR filter.
 11. The method of claim 1 wherein the adaptive time domain filter is selected from a single FIR filter, a mix of filters, whether FIR or IIR, a non-linear filter and a neural network.
 12. The method of claim 1 wherein updating the adaptive filter to at least approach the synthesized filter characteristic comprises varying the adaptive filter by no more than a predefined amount, in order to avoid inappropriate user perceptions.
 13. A computer readable medium comprising a data storage storing a computer program for adaptively processing an input signal, the computer program comprising: computer program code for causing a processor to pass the input signal through an adaptive time domain filter to produce an output signal; computer program code for causing a processor to take at least one of the input signal and the output signal as an analysis signal; computer program code for causing a processor to transform the analysis signal into a frequency domain to produce a transformed analysis signal; computer program code for causing a processor to analyze the transformed analysis signal to produce a plurality of desired gains each corresponding to a respective frequency domain sub-band; computer program code for causing a processor to synthesize a minimum phase time domain filter characteristic which approaches the desired gains, by: obtaining the cepstrum IFFT of the logarithmically expressed desired gains; ensuring the cepstrum is causal; and taking the FFT of the causal cepstrum to produce logarithmically expressed minimum phase desired gains; and computer program code for causing a processor to update the adaptive filter with the synthesised filter characteristic.
 14. The computer readable medium of claim 13 wherein the computer program code for ensuring the cepstrum is causal comprises computer program code for applying a folding sequence to the cepstrum, to fold exponentials of the cepstrum quefrency components in the non-causal rear half of the cepstrum into the causal forward half of the cepstrum.
 15. The computer readable medium of claim 14 wherein the folding sequence is also a cepstral smoothing sequence.
 16. The computer readable medium of claim 14 further comprising computer program code for applying a synthesis window function in the time domain as part of filter synthesis for spectral smoothing.
 17. The computer readable medium of claim 14 further comprising: computer program code for causing a processor to convert the causal cepstrum back to a complex numbered spectrum by FFT; computer program code for causing a processor to convert the logarithmically expressed minimum phase desired gains to linear expression by taking the exponential; and computer program code for causing a processor to return the linearly expressed minimum phase desired gains to the time domain by IFFT to form the basis of time domain filter synthesis.
 18. A device for adaptively processing an input signal, the device comprising: an adaptive time domain filter for producing an output signal from an input signal; an FFT block for taking an analysis signal from at least one of the input signal and the output signal, and for transforming the analysis signal into a frequency domain to produce a transformed analysis signal; a processor for analysing the transformed analysis signal to produce a plurality of desired gains each corresponding to a respective transform domain sub-band; a filter synthesiser for synthesising a minimum phase time domain filter characteristic which approaches the desired gains, the filter synthesiser comprising: an IFFT block for obtaining the cepstrum IFFT of the logarithmically expressed desired gains; means for ensuring the cepstrum is causal; and an FFT block for taking the FFT of the causal cepstrum to produce logarithmically expressed minimum phase desired gains; wherein the adaptive filter is capable of being updated with the synthesised filter characteristic.
 19. The device of claim 18 wherein the means for ensuring the cepstrum is causal comprises a folding stage for applying a folding sequence to the cepstrum, to fold exponentials of the cepstrum quefrency components in the non-causal rear half of the cepstrum into the causal forward half of the cepstrum.
 20. The device of claim 19 wherein the folding sequence is also a cepstral smoothing sequence.
 21. The device of claim 19 wherein the filter synthesiser comprises a time domain synthesis window function applicator for spectral smoothing. 